Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

feat: improve email templates #548

Merged
merged 13 commits into from
Aug 20, 2024
Merged

feat: improve email templates #548

merged 13 commits into from
Aug 20, 2024

Conversation

onehassan
Copy link
Member

@onehassan onehassan commented Aug 15, 2024

PR Type

enhancement, documentation


Description

  • Introduced new email templates for various actions such as email verification, password reset, and passwordless sign-in using @react-email/components.
  • Implemented a script to automate the generation of email templates for different locales.
  • Updated the test suite to enhance email template rendering and added logging for debugging.
  • Added documentation with instructions on generating emails for new locales.
  • Updated package scripts and dependencies to support email template generation and development.

Changes walkthrough 📝

Relevant files
Enhancement
6 files
templates_test.go
Enhance email template rendering in tests                               

go/notifications/templates_test.go

  • Updated email template rendering in tests.
  • Added logging for rendered email body.
  • +51/-3   
    email-confirm-change.tsx
    Add email template for confirming email change                     

    email-templates/generator/email-confirm-change.tsx

  • Added new email template for confirming email change.
  • Utilized @react-email/components for structure.
  • +129/-0 
    email-verify.tsx
    Add email template for email verification                               

    email-templates/generator/email-verify.tsx

  • Added new email template for email verification.
  • Utilized @react-email/components for structure.
  • +127/-0 
    password-reset.tsx
    Add email template for password reset                                       

    email-templates/generator/password-reset.tsx

  • Added new email template for password reset.
  • Utilized @react-email/components for structure.
  • +127/-0 
    render-emails.ts
    Implement email rendering script for locales                         

    email-templates/generator/render-emails.ts

  • Implemented script to render email templates for different locales.
  • Integrated prettier for formatting HTML output.
  • +73/-0   
    signin-passwordless.tsx
    Add email template for passwordless sign-in                           

    email-templates/generator/signin-passwordless.tsx

  • Added new email template for passwordless sign-in.
  • Utilized @react-email/components for structure.
  • +127/-0 
    Documentation
    1 files
    README.md
    Add README for email generation instructions                         

    email-templates/generator/README.md

  • Added instructions for generating emails for new locales.
  • Provided example command for generating German locale emails.
  • +23/-0   
    Dependencies
    2 files
    package.json
    Update package scripts and dependencies for email generation

    package.json

  • Added new scripts for email development and generation.
  • Updated dependencies to include @react-email/components.
  • +4/-0     
    pnpm-lock.yaml
    Update lock file for new email dependencies                           

    pnpm-lock.yaml

  • Updated lock file with new dependencies.
  • Included @react-email/components and related packages.
  • +694/-55
    Configuration changes
    1 files
    tsconfig.json
    Configure TypeScript for React JSX                                             

    tsconfig.json

    • Added JSX configuration for React.
    +1/-0     

    💡 PR-Agent usage:
    Comment /help on the PR to get a list of all available PR-Agent tools and their descriptions

    @onehassan onehassan self-assigned this Aug 15, 2024
    Copy link

    codiumai-pr-agent-pro bot commented Aug 15, 2024

    CI Failure Feedback 🧐

    (Checks updated until commit 2234c7a)

    Action: tests / tests

    Failed stage: Run checks [❌]

    Failed test name: ""

    Failure summary:

    The action failed due to multiple issues:

  • The Nix build process encountered an error because it could not build the path
    /nix/store/j5k1hv4145b9swc8prxaj1x250d2ipxn-gotests, indicating a problem with the build
    configuration or missing dependencies.
  • The tar command failed with the error "Cannot open: File exists", which suggests there were issues
    with extracting or handling files during the build process.
  • The gotests build failed with exit code 1, as indicated by the error message builder for
    '/nix/store/6i9zgvz3mg0vy27c9mjar2n1mrynszlv-gotests.drv' failed with exit code 1.
  • There were code formatting issues detected in go/notifications/templates_test.go, with lines
    exceeding the maximum line length limit.

  • Relevant error logs:
    1:  ##[group]Operating System
    2:  Ubuntu
    ...
    
    411:  /nix/store/k6vxnriwl3ywpmlmvif3zr418j7dwm1n-tzdata-2024a
    412:  /nix/store/iks1pihvbilsh5sy8qvpd638k422w9i8-update-autotools-gnu-config-scripts-hook
    413:  /nix/store/bihw7p4zdqwyxmnc8h67c06lnjkvdan8-xgcc-13.3.0-libgcc
    414:  /nix/store/s5yfqhxzlcpw0ps2vb3gizicvharnd2n-xz-5.6.2
    415:  /nix/store/0rlbqq6p9wwb7wbn5vnpck40c76czid3-xz-5.6.2-bin
    416:  /nix/store/rc18a8k50zmrif61250sfidkqvlg41ln-zlib-1.3.1
    417:  don't know how to build these paths:
    418:  /nix/store/j5k1hv4145b9swc8prxaj1x250d2ipxn-gotests
    419:  error: path '/nix/store/j5k1hv4145b9swc8prxaj1x250d2ipxn-gotests' is not valid
    ...
    
    758:  /usr/bin/tar: ../../../../../nix/store/c6l9badak7sp1sl2vhny57hfnfv07in2-aws-c-common-0.9.10/include/aws/common/math.fallback.inl: Cannot open: File exists
    759:  /usr/bin/tar: ../../../../../nix/store/c6l9badak7sp1sl2vhny57hfnfv07in2-aws-c-common-0.9.10/include/aws/common/atomics_gnu.inl: Cannot open: File exists
    760:  /usr/bin/tar: ../../../../../nix/store/c6l9badak7sp1sl2vhny57hfnfv07in2-aws-c-common-0.9.10/include/aws/common/encoding.inl: Cannot open: File exists
    761:  /usr/bin/tar: ../../../../../nix/store/c6l9badak7sp1sl2vhny57hfnfv07in2-aws-c-common-0.9.10/include/aws/common/lru_cache.h: Cannot open: File exists
    762:  /usr/bin/tar: ../../../../../nix/store/c6l9badak7sp1sl2vhny57hfnfv07in2-aws-c-common-0.9.10/include/aws/common/environment.h: Cannot open: File exists
    763:  /usr/bin/tar: ../../../../../nix/store/c6l9badak7sp1sl2vhny57hfnfv07in2-aws-c-common-0.9.10/include/aws/common/string.inl: Cannot open: File exists
    764:  /usr/bin/tar: ../../../../../nix/store/c6l9badak7sp1sl2vhny57hfnfv07in2-aws-c-common-0.9.10/include/aws/common/posix/common.inl: Cannot open: File exists
    765:  /usr/bin/tar: ../../../../../nix/store/c6l9badak7sp1sl2vhny57hfnfv07in2-aws-c-common-0.9.10/include/aws/common/process.h: Cannot open: File exists
    766:  /usr/bin/tar: ../../../../../nix/store/c6l9badak7sp1sl2vhny57hfnfv07in2-aws-c-common-0.9.10/include/aws/common/error.inl: Cannot open: File exists
    767:  /usr/bin/tar: ../../../../../nix/store/c6l9badak7sp1sl2vhny57hfnfv07in2-aws-c-common-0.9.10/include/aws/common/command_line_parser.h: Cannot open: File exists
    768:  /usr/bin/tar: ../../../../../nix/store/c6l9badak7sp1sl2vhny57hfnfv07in2-aws-c-common-0.9.10/include/aws/common/xml_parser.h: Cannot open: File exists
    769:  /usr/bin/tar: ../../../../../nix/store/c6l9badak7sp1sl2vhny57hfnfv07in2-aws-c-common-0.9.10/include/aws/common/clock.h: Cannot open: File exists
    770:  /usr/bin/tar: ../../../../../nix/store/c6l9badak7sp1sl2vhny57hfnfv07in2-aws-c-common-0.9.10/include/aws/common/error.h: Cannot open: File exists
    ...
    
    5782:  /usr/bin/tar: ../../../../../nix/store/zfabdj4q4plq49faclwzkrsi825qzxny-source/lib/deprecated/misc.nix: Cannot open: File exists
    5783:  /usr/bin/tar: ../../../../../nix/store/zfabdj4q4plq49faclwzkrsi825qzxny-source/lib/deprecated/README.md: Cannot open: File exists
    5784:  /usr/bin/tar: ../../../../../nix/store/zfabdj4q4plq49faclwzkrsi825qzxny-source/lib/customisation.nix: Cannot open: File exists
    5785:  /usr/bin/tar: ../../../../../nix/store/zfabdj4q4plq49faclwzkrsi825qzxny-source/lib/asserts.nix: Cannot open: File exists
    5786:  /usr/bin/tar: ../../../../../nix/store/zfabdj4q4plq49faclwzkrsi825qzxny-source/lib/tests/network.sh: Cannot open: File exists
    5787:  /usr/bin/tar: ../../../../../nix/store/zfabdj4q4plq49faclwzkrsi825qzxny-source/lib/tests/teams.nix: Cannot open: File exists
    5788:  /usr/bin/tar: ../../../../../nix/store/zfabdj4q4plq49faclwzkrsi825qzxny-source/lib/tests/modules/define-option-dependently-nested.nix: Cannot open: File exists
    5789:  /usr/bin/tar: ../../../../../nix/store/zfabdj4q4plq49faclwzkrsi825qzxny-source/lib/tests/modules/freeform-lazyAttrsOf.nix: Cannot open: File exists
    5790:  /usr/bin/tar: ../../../../../nix/store/zfabdj4q4plq49faclwzkrsi825qzxny-source/lib/tests/modules/options-type-error-configuration.nix: Cannot open: File exists
    ...
    
    5796:  /usr/bin/tar: ../../../../../nix/store/zfabdj4q4plq49faclwzkrsi825qzxny-source/lib/tests/modules/declare-submoduleWith-special.nix: Cannot open: File exists
    5797:  /usr/bin/tar: ../../../../../nix/store/zfabdj4q4plq49faclwzkrsi825qzxny-source/lib/tests/modules/define-enable-throw.nix: Cannot open: File exists
    5798:  /usr/bin/tar: ../../../../../nix/store/zfabdj4q4plq49faclwzkrsi825qzxny-source/lib/tests/modules/define-value-string-properties.nix: Cannot open: File exists
    5799:  /usr/bin/tar: ../../../../../nix/store/zfabdj4q4plq49faclwzkrsi825qzxny-source/lib/tests/modules/declare-bare-submodule-nested-option.nix: Cannot open: File exists
    5800:  /usr/bin/tar: ../../../../../nix/store/zfabdj4q4plq49faclwzkrsi825qzxny-source/lib/tests/modules/doRename-condition.nix: Cannot open: File exists
    5801:  /usr/bin/tar: ../../../../../nix/store/zfabdj4q4plq49faclwzkrsi825qzxny-source/lib/tests/modules/types-attrTag-wrong-decl.nix: Cannot open: File exists
    5802:  /usr/bin/tar: ../../../../../nix/store/zfabdj4q4plq49faclwzkrsi825qzxny-source/lib/tests/modules/define-force-attrsOfSub-foo-enable.nix: Cannot open: File exists
    5803:  /usr/bin/tar: ../../../../../nix/store/zfabdj4q4plq49faclwzkrsi825qzxny-source/lib/tests/modules/doRename-warnings.nix: Cannot open: File exists
    5804:  /usr/bin/tar: ../../../../../nix/store/zfabdj4q4plq49faclwzkrsi825qzxny-source/lib/tests/modules/error-nonEmptyListOf-submodule.nix: Cannot open: File exists
    5805:  /usr/bin/tar: ../../../../../nix/store/zfabdj4q4plq49faclwzkrsi825qzxny-source/lib/tests/modules/declare-attrsOf.nix: Cannot open: File exists
    5806:  /usr/bin/tar: ../../../../../nix/store/zfabdj4q4plq49faclwzkrsi825qzxny-source/lib/tests/modules/extendModules-168767-imports.nix: Cannot open: File exists
    5807:  /usr/bin/tar: ../../../../../nix/store/zfabdj4q4plq49faclwzkrsi825qzxny-source/lib/tests/modules/alias-with-priority-can-override.nix: Cannot open: File exists
    5808:  /usr/bin/tar: ../../../../../nix/store/zfabdj4q4plq49faclwzkrsi825qzxny-source/lib/tests/modules/define-attrsOfSub-bar-enable.nix: Cannot open: File exists
    5809:  /usr/bin/tar: ../../../../../nix/store/zfabdj4q4plq49faclwzkrsi825qzxny-source/lib/tests/modules/optionTypeFile.nix: Cannot open: File exists
    5810:  /usr/bin/tar: ../../../../../nix/store/zfabdj4q4plq49faclwzkrsi825qzxny-source/lib/tests/modules/declare-int-between-value.nix: Cannot open: File exists
    5811:  /usr/bin/tar: ../../../../../nix/store/zfabdj4q4plq49faclwzkrsi825qzxny-source/lib/tests/modules/define-settingsDict-a-is-b.nix: Cannot open: File exists
    5812:  /usr/bin/tar: ../../../../../nix/store/zfabdj4q4plq49faclwzkrsi825qzxny-source/lib/tests/modules/deferred-module-error.nix: Cannot open: File exists
    5813:  /usr/bin/tar: ../../../../../nix/store/zfabdj4q4plq49faclwzkrsi825qzxny-source/lib/tests/modules/raw.nix: Cannot open: File exists
    5814:  /usr/bin/tar: ../../../../../nix/store/zfabdj4q4plq49faclwzkrsi825qzxny-source/lib/tests/modules/define-value-string.nix: Cannot open: File exists
    5815:  /usr/bin/tar: ../../../../../nix/store/zfabdj4q4plq49faclwzkrsi825qzxny-source/lib/tests/modules/options-type-error-typical.nix: Cannot open: File exists
    ...
    
    5847:  /usr/bin/tar: ../../../../../nix/store/zfabdj4q4plq49faclwzkrsi825qzxny-source/lib/tests/modules/define-submoduleWith-shorthand.nix: Cannot open: File exists
    5848:  /usr/bin/tar: ../../../../../nix/store/zfabdj4q4plq49faclwzkrsi825qzxny-source/lib/tests/modules/declare-enable.nix: Cannot open: File exists
    5849:  /usr/bin/tar: ../../../../../nix/store/zfabdj4q4plq49faclwzkrsi825qzxny-source/lib/tests/modules/define-freeform-keywords-shorthand.nix: Cannot open: File exists
    5850:  /usr/bin/tar: ../../../../../nix/store/zfabdj4q4plq49faclwzkrsi825qzxny-source/lib/tests/modules/submoduleFiles.nix: Cannot open: File exists
    5851:  /usr/bin/tar: ../../../../../nix/store/zfabdj4q4plq49faclwzkrsi825qzxny-source/lib/tests/modules/define-enable-with-top-level-mkIf.nix: Cannot open: File exists
    5852:  /usr/bin/tar: ../../../../../nix/store/zfabdj4q4plq49faclwzkrsi825qzxny-source/lib/tests/modules/define-value-int-negative.nix: Cannot open: File exists
    5853:  /usr/bin/tar: ../../../../../nix/store/zfabdj4q4plq49faclwzkrsi825qzxny-source/lib/tests/modules/declare-submoduleWith-noshorthand.nix: Cannot open: File exists
    5854:  /usr/bin/tar: ../../../../../nix/store/zfabdj4q4plq49faclwzkrsi825qzxny-source/lib/tests/modules/gvariant.nix: Cannot open: File exists
    5855:  /usr/bin/tar: ../../../../../nix/store/zfabdj4q4plq49faclwzkrsi825qzxny-source/lib/tests/modules/options-type-error-typical-nested.nix: Cannot open: File exists
    ...
    
    5862:  /usr/bin/tar: ../../../../../nix/store/zfabdj4q4plq49faclwzkrsi825qzxny-source/lib/tests/modules/define-value-string-arbitrary.nix: Cannot open: File exists
    5863:  /usr/bin/tar: ../../../../../nix/store/zfabdj4q4plq49faclwzkrsi825qzxny-source/lib/tests/modules/optionTypeMerging.nix: Cannot open: File exists
    5864:  /usr/bin/tar: ../../../../../nix/store/zfabdj4q4plq49faclwzkrsi825qzxny-source/lib/tests/modules/module-argument-default.nix: Cannot open: File exists
    5865:  /usr/bin/tar: ../../../../../nix/store/zfabdj4q4plq49faclwzkrsi825qzxny-source/lib/tests/modules/declare-bare-submodule-deep-option.nix: Cannot open: File exists
    5866:  /usr/bin/tar: ../../../../../nix/store/zfabdj4q4plq49faclwzkrsi825qzxny-source/lib/tests/modules/alias-with-priority.nix: Cannot open: File exists
    5867:  /usr/bin/tar: ../../../../../nix/store/zfabdj4q4plq49faclwzkrsi825qzxny-source/lib/tests/modules/class-check.nix: Cannot open: File exists
    5868:  /usr/bin/tar: ../../../../../nix/store/zfabdj4q4plq49faclwzkrsi825qzxny-source/lib/tests/modules/define-enable-with-custom-arg.nix: Cannot open: File exists
    5869:  /usr/bin/tar: ../../../../../nix/store/zfabdj4q4plq49faclwzkrsi825qzxny-source/lib/tests/modules/declare-coerced-value-unsound.nix: Cannot open: File exists
    5870:  /usr/bin/tar: ../../../../../nix/store/zfabdj4q4plq49faclwzkrsi825qzxny-source/lib/tests/modules/error-mkOption-in-submodule-config.nix: Cannot open: File exists
    ...
    
    5908:  /usr/bin/tar: ../../../../../nix/store/zfabdj4q4plq49faclwzkrsi825qzxny-source/lib/tests/modules/doRename-condition-no-enable.nix: Cannot open: File exists
    5909:  /usr/bin/tar: ../../../../../nix/store/zfabdj4q4plq49faclwzkrsi825qzxny-source/lib/tests/modules/define-attrsOfSub-foo-enable-force.nix: Cannot open: File exists
    5910:  /usr/bin/tar: ../../../../../nix/store/zfabdj4q4plq49faclwzkrsi825qzxny-source/lib/tests/modules/declare-int-unsigned-value.nix: Cannot open: File exists
    5911:  /usr/bin/tar: ../../../../../nix/store/zfabdj4q4plq49faclwzkrsi825qzxny-source/lib/tests/modules/disable-declare-enable.nix: Cannot open: File exists
    5912:  /usr/bin/tar: ../../../../../nix/store/zfabdj4q4plq49faclwzkrsi825qzxny-source/lib/tests/modules/attrsOf-conditional-check.nix: Cannot open: File exists
    5913:  /usr/bin/tar: ../../../../../nix/store/zfabdj4q4plq49faclwzkrsi825qzxny-source/lib/tests/modules/import-custom-arg.nix: Cannot open: File exists
    5914:  /usr/bin/tar: ../../../../../nix/store/zfabdj4q4plq49faclwzkrsi825qzxny-source/lib/tests/modules/adhoc-freeformType-survives-type-merge.nix: Cannot open: File exists
    5915:  /usr/bin/tar: ../../../../../nix/store/zfabdj4q4plq49faclwzkrsi825qzxny-source/lib/tests/modules/declare-int-positive-value-nested.nix: Cannot open: File exists
    5916:  /usr/bin/tar: ../../../../../nix/store/zfabdj4q4plq49faclwzkrsi825qzxny-source/lib/tests/modules/error-mkOption-in-config.nix: Cannot open: File exists
    ...
    
    5970:  /usr/bin/tar: ../../../../../nix/store/zfabdj4q4plq49faclwzkrsi825qzxny-source/.github/workflows/check-nix-format.yml: Cannot open: File exists
    5971:  /usr/bin/tar: ../../../../../nix/store/zfabdj4q4plq49faclwzkrsi825qzxny-source/.github/workflows/periodic-merge-24h.yml: Cannot open: File exists
    5972:  /usr/bin/tar: ../../../../../nix/store/zfabdj4q4plq49faclwzkrsi825qzxny-source/.github/workflows/nix-parse.yml: Cannot open: File exists
    5973:  /usr/bin/tar: ../../../../../nix/store/zfabdj4q4plq49faclwzkrsi825qzxny-source/.github/workflows/check-by-name.yml: Cannot open: File exists
    5974:  /usr/bin/tar: ../../../../../nix/store/zfabdj4q4plq49faclwzkrsi825qzxny-source/.github/workflows/manual-nixpkgs.yml: Cannot open: File exists
    5975:  /usr/bin/tar: ../../../../../nix/store/zfabdj4q4plq49faclwzkrsi825qzxny-source/.github/workflows/basic-eval.yml: Cannot open: File exists
    5976:  /usr/bin/tar: ../../../../../nix/store/zfabdj4q4plq49faclwzkrsi825qzxny-source/.github/workflows/check-cherry-picks.yml: Cannot open: File exists
    5977:  /usr/bin/tar: ../../../../../nix/store/zfabdj4q4plq49faclwzkrsi825qzxny-source/.github/workflows/editorconfig.yml: Cannot open: File exists
    5978:  /usr/bin/tar: ../../../../../nix/store/zfabdj4q4plq49faclwzkrsi825qzxny-source/.github/ISSUE_TEMPLATE/build_failure.md: Cannot open: File exists
    ...
    
    6638:  /usr/bin/tar: ../../../../../nix/store/zfabdj4q4plq49faclwzkrsi825qzxny-source/pkgs/tools/filesystems/wdfs/default.nix: Cannot open: File exists
    6639:  /usr/bin/tar: ../../../../../nix/store/zfabdj4q4plq49faclwzkrsi825qzxny-source/pkgs/tools/filesystems/archivemount/default.nix: Cannot open: File exists
    6640:  /usr/bin/tar: ../../../../../nix/store/zfabdj4q4plq49faclwzkrsi825qzxny-source/pkgs/tools/filesystems/bonnie/default.nix: Cannot open: File exists
    6641:  /usr/bin/tar: ../../../../../nix/store/zfabdj4q4plq49faclwzkrsi825qzxny-source/pkgs/tools/filesystems/fuseiso/default.nix: Cannot open: File exists
    6642:  /usr/bin/tar: ../../../../../nix/store/zfabdj4q4plq49faclwzkrsi825qzxny-source/pkgs/tools/filesystems/u3-tool/default.nix: Cannot open: File exists
    6643:  /usr/bin/tar: ../../../../../nix/store/zfabdj4q4plq49faclwzkrsi825qzxny-source/pkgs/tools/filesystems/afsctool/default.nix: Cannot open: File exists
    6644:  /usr/bin/tar: ../../../../../nix/store/zfabdj4q4plq49faclwzkrsi825qzxny-source/pkgs/tools/filesystems/extundelete/default.nix: Cannot open: File exists
    6645:  /usr/bin/tar: ../../../../../nix/store/zfabdj4q4plq49faclwzkrsi825qzxny-source/pkgs/tools/filesystems/file-rename/default.nix: Cannot open: File exists
    6646:  /usr/bin/tar: ../../../../../nix/store/zfabdj4q4plq49faclwzkrsi825qzxny-source/pkgs/tools/filesystems/mhddfs/fix-format-security-error.patch: Cannot open: File exists
    ...
    
    9620:  /usr/bin/tar: ../../../../../nix/store/zfabdj4q4plq49faclwzkrsi825qzxny-source/pkgs/tools/security/responder/default.nix: Cannot open: File exists
    9621:  /usr/bin/tar: ../../../../../nix/store/zfabdj4q4plq49faclwzkrsi825qzxny-source/pkgs/tools/security/sops/default.nix: Cannot open: File exists
    9622:  /usr/bin/tar: ../../../../../nix/store/zfabdj4q4plq49faclwzkrsi825qzxny-source/pkgs/tools/security/joomscan/default.nix: Cannot open: File exists
    9623:  /usr/bin/tar: ../../../../../nix/store/zfabdj4q4plq49faclwzkrsi825qzxny-source/pkgs/tools/security/trustymail/default.nix: Cannot open: File exists
    9624:  /usr/bin/tar: ../../../../../nix/store/zfabdj4q4plq49faclwzkrsi825qzxny-source/pkgs/tools/security/iaito/default.nix: Cannot open: File exists
    9625:  /usr/bin/tar: ../../../../../nix/store/zfabdj4q4plq49faclwzkrsi825qzxny-source/pkgs/tools/security/chkrootkit/default.nix: Cannot open: File exists
    9626:  /usr/bin/tar: ../../../../../nix/store/zfabdj4q4plq49faclwzkrsi825qzxny-source/pkgs/tools/security/stacs/default.nix: Cannot open: File exists
    9627:  /usr/bin/tar: ../../../../../nix/store/zfabdj4q4plq49faclwzkrsi825qzxny-source/pkgs/tools/security/decoder/default.nix: Cannot open: File exists
    9628:  /usr/bin/tar: ../../../../../nix/store/zfabdj4q4plq49faclwzkrsi825qzxny-source/pkgs/tools/security/zgrab2/fix-go-version-error.patch: Cannot open: File exists
    ...
    
    10073:  /usr/bin/tar: ../../../../../nix/store/zfabdj4q4plq49faclwzkrsi825qzxny-source/pkgs/tools/audio/beets/default.nix: Cannot open: File exists
    10074:  /usr/bin/tar: ../../../../../nix/store/zfabdj4q4plq49faclwzkrsi825qzxny-source/pkgs/tools/audio/pa-applet/default.nix: Cannot open: File exists
    10075:  /usr/bin/tar: ../../../../../nix/store/zfabdj4q4plq49faclwzkrsi825qzxny-source/pkgs/tools/audio/pasystray/default.nix: Cannot open: File exists
    10076:  /usr/bin/tar: ../../../../../nix/store/zfabdj4q4plq49faclwzkrsi825qzxny-source/pkgs/tools/audio/essentia-extractor/default.nix: Cannot open: File exists
    10077:  /usr/bin/tar: ../../../../../nix/store/zfabdj4q4plq49faclwzkrsi825qzxny-source/pkgs/tools/audio/abcm2ps/default.nix: Cannot open: File exists
    10078:  /usr/bin/tar: ../../../../../nix/store/zfabdj4q4plq49faclwzkrsi825qzxny-source/pkgs/tools/audio/piper/train.nix: Cannot open: File exists
    10079:  /usr/bin/tar: ../../../../../nix/store/zfabdj4q4plq49faclwzkrsi825qzxny-source/pkgs/tools/audio/piper/default.nix: Cannot open: File exists
    10080:  /usr/bin/tar: ../../../../../nix/store/zfabdj4q4plq49faclwzkrsi825qzxny-source/pkgs/tools/audio/nanotts/default.nix: Cannot open: File exists
    10081:  /usr/bin/tar: ../../../../../nix/store/zfabdj4q4plq49faclwzkrsi825qzxny-source/pkgs/tools/audio/alsaequal/false_error.patch: Cannot open: File exists
    ...
    
    10885:  /usr/bin/tar: ../../../../../nix/store/zfabdj4q4plq49faclwzkrsi825qzxny-source/pkgs/tools/networking/ndjbdns/default.nix: Cannot open: File exists
    10886:  /usr/bin/tar: ../../../../../nix/store/zfabdj4q4plq49faclwzkrsi825qzxny-source/pkgs/tools/networking/vopono/default.nix: Cannot open: File exists
    10887:  /usr/bin/tar: ../../../../../nix/store/zfabdj4q4plq49faclwzkrsi825qzxny-source/pkgs/tools/networking/wg-netmanager/default.nix: Cannot open: File exists
    10888:  /usr/bin/tar: ../../../../../nix/store/zfabdj4q4plq49faclwzkrsi825qzxny-source/pkgs/tools/networking/swagger-cli/default.nix: Cannot open: File exists
    10889:  /usr/bin/tar: ../../../../../nix/store/zfabdj4q4plq49faclwzkrsi825qzxny-source/pkgs/tools/networking/sitespeed-io/default.nix: Cannot open: File exists
    10890:  /usr/bin/tar: ../../../../../nix/store/zfabdj4q4plq49faclwzkrsi825qzxny-source/pkgs/tools/networking/mtr-exporter/default.nix: Cannot open: File exists
    10891:  /usr/bin/tar: ../../../../../nix/store/zfabdj4q4plq49faclwzkrsi825qzxny-source/pkgs/tools/networking/isync/0001-Increase-imap_vprintf-buffer-size.patch: Cannot open: File exists
    10892:  /usr/bin/tar: ../../../../../nix/store/zfabdj4q4plq49faclwzkrsi825qzxny-source/pkgs/tools/networking/isync/default.nix: Cannot open: File exists
    10893:  /usr/bin/tar: ../../../../../nix/store/zfabdj4q4plq49faclwzkrsi825qzxny-source/pkgs/tools/networking/isync/work-around-unexpected-EOF-error-messages-at-end-of-SSL-connections.patch: Cannot open: File exists
    ...
    
    12144:  /usr/bin/tar: ../../../../../nix/store/zfabdj4q4plq49faclwzkrsi825qzxny-source/pkgs/os-specific/linux/cpuid/default.nix: Cannot open: File exists
    12145:  /usr/bin/tar: ../../../../../nix/store/zfabdj4q4plq49faclwzkrsi825qzxny-source/pkgs/os-specific/linux/hibernate/install.patch: Cannot open: File exists
    12146:  /usr/bin/tar: ../../../../../nix/store/zfabdj4q4plq49faclwzkrsi825qzxny-source/pkgs/os-specific/linux/hibernate/hibernate.patch: Cannot open: File exists
    12147:  /usr/bin/tar: ../../../../../nix/store/zfabdj4q4plq49faclwzkrsi825qzxny-source/pkgs/os-specific/linux/hibernate/gen-manpages.patch: Cannot open: File exists
    12148:  /usr/bin/tar: ../../../../../nix/store/zfabdj4q4plq49faclwzkrsi825qzxny-source/pkgs/os-specific/linux/hibernate/default.nix: Cannot open: File exists
    12149:  /usr/bin/tar: ../../../../../nix/store/zfabdj4q4plq49faclwzkrsi825qzxny-source/pkgs/os-specific/linux/vmm_clock/default.nix: Cannot open: File exists
    12150:  /usr/bin/tar: ../../../../../nix/store/zfabdj4q4plq49faclwzkrsi825qzxny-source/pkgs/os-specific/linux/ryzenadj/default.nix: Cannot open: File exists
    12151:  /usr/bin/tar: ../../../../../nix/store/zfabdj4q4plq49faclwzkrsi825qzxny-source/pkgs/os-specific/linux/undervolt/default.nix: Cannot open: File exists
    12152:  /usr/bin/tar: ../../../../../nix/store/zfabdj4q4plq49faclwzkrsi825qzxny-source/pkgs/os-specific/linux/error-inject/default.nix: Cannot open: File exists
    ...
    
    13267:  /usr/bin/tar: ../../../../../nix/store/zfabdj4q4plq49faclwzkrsi825qzxny-source/pkgs/development/octave-modules/econometrics/default.nix: Cannot open: File exists
    13268:  /usr/bin/tar: ../../../../../nix/store/zfabdj4q4plq49faclwzkrsi825qzxny-source/pkgs/development/octave-modules/msh/default.nix: Cannot open: File exists
    13269:  /usr/bin/tar: ../../../../../nix/store/zfabdj4q4plq49faclwzkrsi825qzxny-source/pkgs/development/octave-modules/struct/default.nix: Cannot open: File exists
    13270:  /usr/bin/tar: ../../../../../nix/store/zfabdj4q4plq49faclwzkrsi825qzxny-source/pkgs/development/octave-modules/vibes/default.nix: Cannot open: File exists
    13271:  /usr/bin/tar: ../../../../../nix/store/zfabdj4q4plq49faclwzkrsi825qzxny-source/pkgs/development/octave-modules/communications/default.nix: Cannot open: File exists
    13272:  /usr/bin/tar: ../../../../../nix/store/zfabdj4q4plq49faclwzkrsi825qzxny-source/pkgs/development/octave-modules/netcdf/default.nix: Cannot open: File exists
    13273:  /usr/bin/tar: ../../../../../nix/store/zfabdj4q4plq49faclwzkrsi825qzxny-source/pkgs/development/octave-modules/optics/default.nix: Cannot open: File exists
    13274:  /usr/bin/tar: ../../../../../nix/store/zfabdj4q4plq49faclwzkrsi825qzxny-source/pkgs/development/octave-modules/general/default.nix: Cannot open: File exists
    13275:  /usr/bin/tar: ../../../../../nix/store/zfabdj4q4plq49faclwzkrsi825qzxny-source/pkgs/development/octave-modules/database/c_verror.patch: Cannot open: File exists
    ...
    
    14017:  /usr/bin/tar: ../../../../../nix/store/zfabdj4q4plq49faclwzkrsi825qzxny-source/pkgs/development/libraries/physics/lhapdf/pdf_sets.nix: Cannot open: File exists
    14018:  /usr/bin/tar: ../../../../../nix/store/zfabdj4q4plq49faclwzkrsi825qzxny-source/pkgs/development/libraries/physics/lhapdf/maintainer.sh: Cannot open: File exists
    14019:  /usr/bin/tar: ../../../../../nix/store/zfabdj4q4plq49faclwzkrsi825qzxny-source/pkgs/development/libraries/physics/lhapdf/pdfset-hook.sh: Cannot open: File exists
    14020:  /usr/bin/tar: ../../../../../nix/store/zfabdj4q4plq49faclwzkrsi825qzxny-source/pkgs/development/libraries/physics/lhapdf/default.nix: Cannot open: File exists
    14021:  /usr/bin/tar: ../../../../../nix/store/zfabdj4q4plq49faclwzkrsi825qzxny-source/pkgs/development/libraries/physics/apfel/cmake.patch: Cannot open: File exists
    14022:  /usr/bin/tar: ../../../../../nix/store/zfabdj4q4plq49faclwzkrsi825qzxny-source/pkgs/development/libraries/physics/apfel/default.nix: Cannot open: File exists
    14023:  /usr/bin/tar: ../../../../../nix/store/zfabdj4q4plq49faclwzkrsi825qzxny-source/pkgs/development/libraries/physics/cernlib/setup-hook.sh: Cannot open: File exists
    14024:  /usr/bin/tar: ../../../../../nix/store/zfabdj4q4plq49faclwzkrsi825qzxny-source/pkgs/development/libraries/physics/cernlib/patch.patch: Cannot open: File exists
    14025:  /usr/bin/tar: ../../../../../nix/store/zfabdj4q4plq49faclwzkrsi825qzxny-source/pkgs/development/libraries/physics/cernlib/0001-Use-strerror-rather-than-sys_errlist-to-fix-compilat.patch: Cannot open: File exists
    ...
    
    14645:  /usr/bin/tar: ../../../../../nix/store/zfabdj4q4plq49faclwzkrsi825qzxny-source/pkgs/development/libraries/qt-5/mkDerivation.nix: Cannot open: File exists
    14646:  /usr/bin/tar: ../../../../../nix/store/zfabdj4q4plq49faclwzkrsi825qzxny-source/pkgs/development/libraries/qt-5/qtModule.nix: Cannot open: File exists
    14647:  /usr/bin/tar: ../../../../../nix/store/zfabdj4q4plq49faclwzkrsi825qzxny-source/pkgs/development/libraries/qt-5/README.md: Cannot open: File exists
    14648:  /usr/bin/tar: ../../../../../nix/store/zfabdj4q4plq49faclwzkrsi825qzxny-source/pkgs/development/libraries/qzxing/default.nix: Cannot open: File exists
    14649:  /usr/bin/tar: ../../../../../nix/store/zfabdj4q4plq49faclwzkrsi825qzxny-source/pkgs/development/libraries/libhdhomerun/nixos-darwin-no-fat-dylib.patch: Cannot open: File exists
    14650:  /usr/bin/tar: ../../../../../nix/store/zfabdj4q4plq49faclwzkrsi825qzxny-source/pkgs/development/libraries/libhdhomerun/default.nix: Cannot open: File exists
    14651:  /usr/bin/tar: ../../../../../nix/store/zfabdj4q4plq49faclwzkrsi825qzxny-source/pkgs/development/libraries/nsync/default.nix: Cannot open: File exists
    14652:  /usr/bin/tar: ../../../../../nix/store/zfabdj4q4plq49faclwzkrsi825qzxny-source/pkgs/development/libraries/opentracing-cpp/default.nix: Cannot open: File exists
    14653:  /usr/bin/tar: ../../../../../nix/store/zfabdj4q4plq49faclwzkrsi825qzxny-source/pkgs/development/libraries/libgpg-error/default.nix: Cannot open: File exists
    ...
    
    17287:  /usr/bin/tar: ../../../../../nix/store/zfabdj4q4plq49faclwzkrsi825qzxny-source/pkgs/development/tools/misc/orogene/default.nix: Cannot open: File exists
    17288:  /usr/bin/tar: ../../../../../nix/store/zfabdj4q4plq49faclwzkrsi825qzxny-source/pkgs/development/tools/misc/intel-gpu-tools/default.nix: Cannot open: File exists
    17289:  /usr/bin/tar: ../../../../../nix/store/zfabdj4q4plq49faclwzkrsi825qzxny-source/pkgs/development/tools/misc/seer/default.nix: Cannot open: File exists
    17290:  /usr/bin/tar: ../../../../../nix/store/zfabdj4q4plq49faclwzkrsi825qzxny-source/pkgs/development/tools/misc/help2man/1.40.4-cygwin-nls.patch: Cannot open: File exists
    17291:  /usr/bin/tar: ../../../../../nix/store/zfabdj4q4plq49faclwzkrsi825qzxny-source/pkgs/development/tools/misc/help2man/default.nix: Cannot open: File exists
    17292:  /usr/bin/tar: ../../../../../nix/store/zfabdj4q4plq49faclwzkrsi825qzxny-source/pkgs/development/tools/misc/hydra-cli/default.nix: Cannot open: File exists
    17293:  /usr/bin/tar: ../../../../../nix/store/zfabdj4q4plq49faclwzkrsi825qzxny-source/pkgs/development/tools/misc/replacement/default.nix: Cannot open: File exists
    17294:  /usr/bin/tar: ../../../../../nix/store/zfabdj4q4plq49faclwzkrsi825qzxny-source/pkgs/development/tools/misc/jsonfmt/default.nix: Cannot open: File exists
    17295:  /usr/bin/tar: ../../../../../nix/store/zfabdj4q4plq49faclwzkrsi825qzxny-source/pkgs/development/tools/misc/go-licenses/fix-go-version-error.patch: Cannot open: File exists
    ...
    
    17313:  /usr/bin/tar: ../../../../../nix/store/zfabdj4q4plq49faclwzkrsi825qzxny-source/pkgs/development/tools/misc/elfkickers/default.nix: Cannot open: File exists
    17314:  /usr/bin/tar: ../../../../../nix/store/zfabdj4q4plq49faclwzkrsi825qzxny-source/pkgs/development/tools/misc/eggdbus/default.nix: Cannot open: File exists
    17315:  /usr/bin/tar: ../../../../../nix/store/zfabdj4q4plq49faclwzkrsi825qzxny-source/pkgs/development/tools/misc/n98-magerun2/default.nix: Cannot open: File exists
    17316:  /usr/bin/tar: ../../../../../nix/store/zfabdj4q4plq49faclwzkrsi825qzxny-source/pkgs/development/tools/misc/argbash/default.nix: Cannot open: File exists
    17317:  /usr/bin/tar: ../../../../../nix/store/zfabdj4q4plq49faclwzkrsi825qzxny-source/pkgs/development/tools/misc/dfu-util/default.nix: Cannot open: File exists
    17318:  /usr/bin/tar: ../../../../../nix/store/zfabdj4q4plq49faclwzkrsi825qzxny-source/pkgs/development/tools/misc/dfu-programmer/default.nix: Cannot open: File exists
    17319:  /usr/bin/tar: ../../../../../nix/store/zfabdj4q4plq49faclwzkrsi825qzxny-source/pkgs/development/tools/misc/msitools/default.nix: Cannot open: File exists
    17320:  /usr/bin/tar: ../../../../../nix/store/zfabdj4q4plq49faclwzkrsi825qzxny-source/pkgs/development/tools/misc/planus/default.nix: Cannot open: File exists
    17321:  /usr/bin/tar: ../../../../../nix/store/zfabdj4q4plq49faclwzkrsi825qzxny-source/pkgs/development/tools/misc/elfutils/musl-error_h.patch: Cannot open: File exists
    ...
    
    19668:  /usr/bin/tar: ../../../../../nix/store/zfabdj4q4plq49faclwzkrsi825qzxny-source/pkgs/development/compilers/ats2/setup-contrib-hook.sh: Cannot open: File exists
    19669:  /usr/bin/tar: ../../../../../nix/store/zfabdj4q4plq49faclwzkrsi825qzxny-source/pkgs/development/compilers/mlkit/default.nix: Cannot open: File exists
    19670:  /usr/bin/tar: ../../../../../nix/store/zfabdj4q4plq49faclwzkrsi825qzxny-source/pkgs/development/compilers/ocaml/4.10.nix: Cannot open: File exists
    19671:  /usr/bin/tar: ../../../../../nix/store/zfabdj4q4plq49faclwzkrsi825qzxny-source/pkgs/development/compilers/ocaml/4.09.nix: Cannot open: File exists
    19672:  /usr/bin/tar: ../../../../../nix/store/zfabdj4q4plq49faclwzkrsi825qzxny-source/pkgs/development/compilers/ocaml/5.0.nix: Cannot open: File exists
    19673:  /usr/bin/tar: ../../../../../nix/store/zfabdj4q4plq49faclwzkrsi825qzxny-source/pkgs/development/compilers/ocaml/4.02.nix: Cannot open: File exists
    19674:  /usr/bin/tar: ../../../../../nix/store/zfabdj4q4plq49faclwzkrsi825qzxny-source/pkgs/development/compilers/ocaml/4.11.nix: Cannot open: File exists
    19675:  /usr/bin/tar: ../../../../../nix/store/zfabdj4q4plq49faclwzkrsi825qzxny-source/pkgs/development/compilers/ocaml/4.08.nix: Cannot open: File exists
    19676:  /usr/bin/tar: ../../../../../nix/store/zfabdj4q4plq49faclwzkrsi825qzxny-source/pkgs/development/compilers/ocaml/4.09.1-Werror.patch: Cannot open: File exists
    ...
    
    21156:  /usr/bin/tar: ../../../../../nix/store/zfabdj4q4plq49faclwzkrsi825qzxny-source/pkgs/development/python-modules/cachy/default.nix: Cannot open: File exists
    21157:  /usr/bin/tar: ../../../../../nix/store/zfabdj4q4plq49faclwzkrsi825qzxny-source/pkgs/development/python-modules/gamble/default.nix: Cannot open: File exists
    21158:  /usr/bin/tar: ../../../../../nix/store/zfabdj4q4plq49faclwzkrsi825qzxny-source/pkgs/development/python-modules/sorl-thumbnail/default.nix: Cannot open: File exists
    21159:  /usr/bin/tar: ../../../../../nix/store/zfabdj4q4plq49faclwzkrsi825qzxny-source/pkgs/development/python-modules/pycep-parser/default.nix: Cannot open: File exists
    21160:  /usr/bin/tar: ../../../../../nix/store/zfabdj4q4plq49faclwzkrsi825qzxny-source/pkgs/development/python-modules/patch/default.nix: Cannot open: File exists
    21161:  /usr/bin/tar: ../../../../../nix/store/zfabdj4q4plq49faclwzkrsi825qzxny-source/pkgs/development/python-modules/qgrid/default.nix: Cannot open: File exists
    21162:  /usr/bin/tar: ../../../../../nix/store/zfabdj4q4plq49faclwzkrsi825qzxny-source/pkgs/development/python-modules/gradio/client.nix: Cannot open: File exists
    21163:  /usr/bin/tar: ../../../../../nix/store/zfabdj4q4plq49faclwzkrsi825qzxny-source/pkgs/development/python-modules/gradio/default.nix: Cannot open: File exists
    21164:  /usr/bin/tar: ../../../../../nix/store/zfabdj4q4plq49faclwzkrsi825qzxny-source/pkgs/development/python-modules/gradio/conftest-skip-network-errors.py: Cannot open: File exists
    ...
    
    22399:  /usr/bin/tar: ../../../../../nix/store/zfabdj4q4plq49faclwzkrsi825qzxny-source/pkgs/development/python-modules/cson/default.nix: Cannot open: File exists
    22400:  /usr/bin/tar: ../../../../../nix/store/zfabdj4q4plq49faclwzkrsi825qzxny-source/pkgs/development/python-modules/pylacus/default.nix: Cannot open: File exists
    22401:  /usr/bin/tar: ../../../../../nix/store/zfabdj4q4plq49faclwzkrsi825qzxny-source/pkgs/development/python-modules/pyxlsb/default.nix: Cannot open: File exists
    22402:  /usr/bin/tar: ../../../../../nix/store/zfabdj4q4plq49faclwzkrsi825qzxny-source/pkgs/development/python-modules/hickle/default.nix: Cannot open: File exists
    22403:  /usr/bin/tar: ../../../../../nix/store/zfabdj4q4plq49faclwzkrsi825qzxny-source/pkgs/development/python-modules/ruuvitag-ble/default.nix: Cannot open: File exists
    22404:  /usr/bin/tar: ../../../../../nix/store/zfabdj4q4plq49faclwzkrsi825qzxny-source/pkgs/development/python-modules/dissect-regf/default.nix: Cannot open: File exists
    22405:  /usr/bin/tar: ../../../../../nix/store/zfabdj4q4plq49faclwzkrsi825qzxny-source/pkgs/development/python-modules/scmrepo/default.nix: Cannot open: File exists
    22406:  /usr/bin/tar: ../../../../../nix/store/zfabdj4q4plq49faclwzkrsi825qzxny-source/pkgs/development/python-modules/ws4py/default.nix: Cannot open: File exists
    22407:  /usr/bin/tar: ../../../../../nix/store/zfabdj4q4plq49faclwzkrsi825qzxny-source/pkgs/development/python-modules/google-cloud-error-reporting/default.nix: Cannot open: File exists
    ...
    
    25097:  /usr/bin/tar: ../../../../../nix/store/zfabdj4q4plq49faclwzkrsi825qzxny-source/pkgs/development/python-modules/bytecode/default.nix: Cannot open: File exists
    25098:  /usr/bin/tar: ../../../../../nix/store/zfabdj4q4plq49faclwzkrsi825qzxny-source/pkgs/development/python-modules/here-routing/default.nix: Cannot open: File exists
    25099:  /usr/bin/tar: ../../../../../nix/store/zfabdj4q4plq49faclwzkrsi825qzxny-source/pkgs/development/python-modules/grpcio-tools/default.nix: Cannot open: File exists
    25100:  /usr/bin/tar: ../../../../../nix/store/zfabdj4q4plq49faclwzkrsi825qzxny-source/pkgs/development/python-modules/backports-shutil-get-terminal-size/default.nix: Cannot open: File exists
    25101:  /usr/bin/tar: ../../../../../nix/store/zfabdj4q4plq49faclwzkrsi825qzxny-source/pkgs/development/python-modules/pymeteireann/default.nix: Cannot open: File exists
    25102:  /usr/bin/tar: ../../../../../nix/store/zfabdj4q4plq49faclwzkrsi825qzxny-source/pkgs/development/python-modules/apprise/default.nix: Cannot open: File exists
    25103:  /usr/bin/tar: ../../../../../nix/store/zfabdj4q4plq49faclwzkrsi825qzxny-source/pkgs/development/python-modules/knocki/default.nix: Cannot open: File exists
    25104:  /usr/bin/tar: ../../../../../nix/store/zfabdj4q4plq49faclwzkrsi825qzxny-source/pkgs/development/python-modules/mpi4py/default.nix: Cannot open: File exists
    25105:  /usr/bin/tar: ../../../../../nix/store/zfabdj4q4plq49faclwzkrsi825qzxny-source/pkgs/development/python-modules/pretty-errors/default.nix: Cannot open: File exists
    ...
    
    26060:  /usr/bin/tar: ../../../../../nix/store/zfabdj4q4plq49faclwzkrsi825qzxny-source/pkgs/development/python-modules/timelib/default.nix: Cannot open: File exists
    26061:  /usr/bin/tar: ../../../../../nix/store/zfabdj4q4plq49faclwzkrsi825qzxny-source/pkgs/development/python-modules/solidpython2/difftool_tests.patch: Cannot open: File exists
    26062:  /usr/bin/tar: ../../../../../nix/store/zfabdj4q4plq49faclwzkrsi825qzxny-source/pkgs/development/python-modules/solidpython2/default.nix: Cannot open: File exists
    26063:  /usr/bin/tar: ../../../../../nix/store/zfabdj4q4plq49faclwzkrsi825qzxny-source/pkgs/development/python-modules/pywbem/default.nix: Cannot open: File exists
    26064:  /usr/bin/tar: ../../../../../nix/store/zfabdj4q4plq49faclwzkrsi825qzxny-source/pkgs/development/python-modules/pymilter/default.nix: Cannot open: File exists
    26065:  /usr/bin/tar: ../../../../../nix/store/zfabdj4q4plq49faclwzkrsi825qzxny-source/pkgs/development/python-modules/msldap/default.nix: Cannot open: File exists
    26066:  /usr/bin/tar: ../../../../../nix/store/zfabdj4q4plq49faclwzkrsi825qzxny-source/pkgs/development/python-modules/python-bidi/default.nix: Cannot open: File exists
    26067:  /usr/bin/tar: ../../../../../nix/store/zfabdj4q4plq49faclwzkrsi825qzxny-source/pkgs/development/python-modules/editdistpy/default.nix: Cannot open: File exists
    26068:  /usr/bin/tar: ../../../../../nix/store/zfabdj4q4plq49faclwzkrsi825qzxny-source/pkgs/development/python-modules/pytest-error-for-skips/default.nix: Cannot open: File exists
    ...
    
    26554:  /usr/bin/tar: ../../../../../nix/store/zfabdj4q4plq49faclwzkrsi825qzxny-source/pkgs/development/python-modules/django/django_3_set_geos_gdal_lib.patch: Cannot open: File exists
    26555:  /usr/bin/tar: ../../../../../nix/store/zfabdj4q4plq49faclwzkrsi825qzxny-source/pkgs/development/python-modules/django/5.nix: Cannot open: File exists
    26556:  /usr/bin/tar: ../../../../../nix/store/zfabdj4q4plq49faclwzkrsi825qzxny-source/pkgs/development/python-modules/django/django_5_set_geos_gdal_lib.patch: Cannot open: File exists
    26557:  /usr/bin/tar: ../../../../../nix/store/zfabdj4q4plq49faclwzkrsi825qzxny-source/pkgs/development/python-modules/django/django_4_set_zoneinfo_dir.patch: Cannot open: File exists
    26558:  /usr/bin/tar: ../../../../../nix/store/zfabdj4q4plq49faclwzkrsi825qzxny-source/pkgs/development/python-modules/django/django_5_tests_pythonpath.patch: Cannot open: File exists
    26559:  /usr/bin/tar: ../../../../../nix/store/zfabdj4q4plq49faclwzkrsi825qzxny-source/pkgs/development/python-modules/django/django_3_set_zoneinfo_dir.patch: Cannot open: File exists
    26560:  /usr/bin/tar: ../../../../../nix/store/zfabdj4q4plq49faclwzkrsi825qzxny-source/pkgs/development/python-modules/django/3.nix: Cannot open: File exists
    26561:  /usr/bin/tar: ../../../../../nix/store/zfabdj4q4plq49faclwzkrsi825qzxny-source/pkgs/development/python-modules/django/django_5_set_zoneinfo_dir.patch: Cannot open: File exists
    26562:  /usr/bin/tar: ../../../../../nix/store/zfabdj4q4plq49faclwzkrsi825qzxny-source/pkgs/development/python-modules/django/django_5_disable_failing_tests.patch: Cannot open: File exists
    ...
    
    31447:  /usr/bin/tar: ../../../../../nix/store/zfabdj4q4plq49faclwzkrsi825qzxny-source/pkgs/applications/misc/rm-improved/default.nix: Cannot open: File exists
    31448:  /usr/bin/tar: ../../../../../nix/store/zfabdj4q4plq49faclwzkrsi825qzxny-source/pkgs/applications/misc/phoc/default.nix: Cannot open: File exists
    31449:  /usr/bin/tar: ../../../../../nix/store/zfabdj4q4plq49faclwzkrsi825qzxny-source/pkgs/applications/misc/lenmus/default.nix: Cannot open: File exists
    31450:  /usr/bin/tar: ../../../../../nix/store/zfabdj4q4plq49faclwzkrsi825qzxny-source/pkgs/applications/misc/ydict/default.nix: Cannot open: File exists
    31451:  /usr/bin/tar: ../../../../../nix/store/zfabdj4q4plq49faclwzkrsi825qzxny-source/pkgs/applications/misc/birdtray/default.nix: Cannot open: File exists
    31452:  /usr/bin/tar: ../../../../../nix/store/zfabdj4q4plq49faclwzkrsi825qzxny-source/pkgs/applications/misc/rofi-menugen/default.nix: Cannot open: File exists
    31453:  /usr/bin/tar: ../../../../../nix/store/zfabdj4q4plq49faclwzkrsi825qzxny-source/pkgs/applications/misc/9menu/default.nix: Cannot open: File exists
    31454:  /usr/bin/tar: ../../../../../nix/store/zfabdj4q4plq49faclwzkrsi825qzxny-source/pkgs/applications/misc/vue/default.nix: Cannot open: File exists
    31455:  /usr/bin/tar: ../../../../../nix/store/zfabdj4q4plq49faclwzkrsi825qzxny-source/pkgs/applications/misc/writefreely/fix-go-version-error.patch: Cannot open: File exists
    ...
    
    31500:  /usr/bin/tar: ../../../../../nix/store/zfabdj4q4plq49faclwzkrsi825qzxny-source/pkgs/applications/misc/pgmanage/default.nix: Cannot open: File exists
    31501:  /usr/bin/tar: ../../../../../nix/store/zfabdj4q4plq49faclwzkrsi825qzxny-source/pkgs/applications/misc/kile-wl/default.nix: Cannot open: File exists
    31502:  /usr/bin/tar: ../../../../../nix/store/zfabdj4q4plq49faclwzkrsi825qzxny-source/pkgs/applications/misc/kile-wl/Cargo.lock: Cannot open: File exists
    31503:  /usr/bin/tar: ../../../../../nix/store/zfabdj4q4plq49faclwzkrsi825qzxny-source/pkgs/applications/misc/seashells/default.nix: Cannot open: File exists
    31504:  /usr/bin/tar: ../../../../../nix/store/zfabdj4q4plq49faclwzkrsi825qzxny-source/pkgs/applications/misc/kbt/default.nix: Cannot open: File exists
    31505:  /usr/bin/tar: ../../../../../nix/store/zfabdj4q4plq49faclwzkrsi825qzxny-source/pkgs/applications/misc/fluidd/default.nix: Cannot open: File exists
    31506:  /usr/bin/tar: ../../../../../nix/store/zfabdj4q4plq49faclwzkrsi825qzxny-source/pkgs/applications/misc/ptask/tw-version.patch: Cannot open: File exists
    31507:  /usr/bin/tar: ../../../../../nix/store/zfabdj4q4plq49faclwzkrsi825qzxny-source/pkgs/applications/misc/ptask/default.nix: Cannot open: File exists
    31508:  /usr/bin/tar: ../../../../../nix/store/zfabdj4q4plq49faclwzkrsi825qzxny-source/pkgs/applications/misc/ptask/json_c_is_error.patch: Cannot open: File exists
    ...
    
    34496:  /usr/bin/tar: ../../../../../nix/store/zfabdj4q4plq49faclwzkrsi825qzxny-source/pkgs/applications/audio/meterbridge/fix_build_with_gcc-5.patch: Cannot open: File exists
    34497:  /usr/bin/tar: ../../../../../nix/store/zfabdj4q4plq49faclwzkrsi825qzxny-source/pkgs/applications/audio/meterbridge/buf_rect.patch: Cannot open: File exists
    34498:  /usr/bin/tar: ../../../../../nix/store/zfabdj4q4plq49faclwzkrsi825qzxny-source/pkgs/applications/audio/meterbridge/default.nix: Cannot open: File exists
    34499:  /usr/bin/tar: ../../../../../nix/store/zfabdj4q4plq49faclwzkrsi825qzxny-source/pkgs/applications/audio/musly/default.nix: Cannot open: File exists
    34500:  /usr/bin/tar: ../../../../../nix/store/zfabdj4q4plq49faclwzkrsi825qzxny-source/pkgs/applications/audio/japa/default.nix: Cannot open: File exists
    34501:  /usr/bin/tar: ../../../../../nix/store/zfabdj4q4plq49faclwzkrsi825qzxny-source/pkgs/applications/audio/pianoteq/pianoteq.svg: Cannot open: File exists
    34502:  /usr/bin/tar: ../../../../../nix/store/zfabdj4q4plq49faclwzkrsi825qzxny-source/pkgs/applications/audio/pianoteq/default.nix: Cannot open: File exists
    34503:  /usr/bin/tar: ../../../../../nix/store/zfabdj4q4plq49faclwzkrsi825qzxny-source/pkgs/applications/audio/pulseaudio-ctl/default.nix: Cannot open: File exists
    34504:  /usr/bin/tar: ../../../../../nix/store/zfabdj4q4plq49faclwzkrsi825qzxny-source/pkgs/applications/audio/jackmix/no_error.patch: Cannot open: File exists
    ...
    
    37243:  /usr/bin/tar: ../../../../../nix/store/zfabdj4q4plq49faclwzkrsi825qzxny-source/pkgs/games/legendary-gl/default.nix: Cannot open: File exists
    37244:  /usr/bin/tar: ../../../../../nix/store/zfabdj4q4plq49faclwzkrsi825qzxny-source/pkgs/games/crack-attack/crack-attack-1.1.14-glut.patch: Cannot open: File exists
    37245:  /usr/bin/tar: ../../../../../nix/store/zfabdj4q4plq49faclwzkrsi825qzxny-source/pkgs/games/crack-attack/crack-attack-1.1.14-gcc43.patch: Cannot open: File exists
    37246:  /usr/bin/tar: ../../../../../nix/store/zfabdj4q4plq49faclwzkrsi825qzxny-source/pkgs/games/crack-attack/default.nix: Cannot open: File exists
    37247:  /usr/bin/tar: ../../../../../nix/store/zfabdj4q4plq49faclwzkrsi825qzxny-source/pkgs/games/mudlet/default.nix: Cannot open: File exists
    37248:  /usr/bin/tar: ../../../../../nix/store/zfabdj4q4plq49faclwzkrsi825qzxny-source/pkgs/games/brutalmaze/default.nix: Cannot open: File exists
    37249:  /usr/bin/tar: ../../../../../nix/store/zfabdj4q4plq49faclwzkrsi825qzxny-source/pkgs/games/kabeljau/default.nix: Cannot open: File exists
    37250:  /usr/bin/tar: ../../../../../nix/store/zfabdj4q4plq49faclwzkrsi825qzxny-source/pkgs/games/darkplaces/default.nix: Cannot open: File exists
    37251:  /usr/bin/tar: ../../../../../nix/store/zfabdj4q4plq49faclwzkrsi825qzxny-source/pkgs/games/urbanterror/Makefile.local: Cannot open: File exists
    37252:  /usr/bin/tar: ../../../../../nix/store/zfabdj4q4plq49faclwzkrsi825qzxny-source/pkgs/games/urbanterror/default.nix: Cannot open: File exists
    ...
    
    38316:  /usr/bin/tar: ../../../../../nix/store/zfabdj4q4plq49faclwzkrsi825qzxny-source/pkgs/by-name/go/gosimports/package.nix: Cannot open: File exists
    38317:  /usr/bin/tar: ../../../../../nix/store/zfabdj4q4plq49faclwzkrsi825qzxny-source/pkgs/by-name/go/gomarkdoc/package.nix: Cannot open: File exists
    38318:  /usr/bin/tar: ../../../../../nix/store/zfabdj4q4plq49faclwzkrsi825qzxny-source/pkgs/by-name/go/goredo/fix-tests.diff: Cannot open: File exists
    38319:  /usr/bin/tar: ../../../../../nix/store/zfabdj4q4plq49faclwzkrsi825qzxny-source/pkgs/by-name/go/goredo/package.nix: Cannot open: File exists
    38320:  /usr/bin/tar: ../../../../../nix/store/zfabdj4q4plq49faclwzkrsi825qzxny-source/pkgs/by-name/go/google-chrome/package.nix: Cannot open: File exists
    38321:  /usr/bin/tar: ../../../../../nix/store/zfabdj4q4plq49faclwzkrsi825qzxny-source/pkgs/by-name/go/gotenberg/package.nix: Cannot open: File exists
    38322:  /usr/bin/tar: ../../../../../nix/store/zfabdj4q4plq49faclwzkrsi825qzxny-source/pkgs/by-name/go/gordonflashtool/package.nix: Cannot open: File exists
    38323:  /usr/bin/tar: ../../../../../nix/store/zfabdj4q4plq49faclwzkrsi825qzxny-source/pkgs/by-name/go/gophish/package.nix: Cannot open: File exists
    38324:  /usr/bin/tar: ../../../../../nix/store/zfabdj4q4plq49faclwzkrsi825qzxny-source/pkgs/by-name/go/go-errorlint/package.nix: Cannot open: File exists
    ...
    
    38888:  /usr/bin/tar: ../../../../../nix/store/zfabdj4q4plq49faclwzkrsi825qzxny-source/pkgs/by-name/i3/i3bar-river/package.nix: Cannot open: File exists
    38889:  /usr/bin/tar: ../../../../../nix/store/zfabdj4q4plq49faclwzkrsi825qzxny-source/pkgs/by-name/ij/ijhttp/package.nix: Cannot open: File exists
    38890:  /usr/bin/tar: ../../../../../nix/store/zfabdj4q4plq49faclwzkrsi825qzxny-source/pkgs/by-name/ki/kiwitalk/package.nix: Cannot open: File exists
    38891:  /usr/bin/tar: ../../../../../nix/store/zfabdj4q4plq49faclwzkrsi825qzxny-source/pkgs/by-name/ki/kiwitalk/Cargo.lock: Cannot open: File exists
    38892:  /usr/bin/tar: ../../../../../nix/store/zfabdj4q4plq49faclwzkrsi825qzxny-source/pkgs/by-name/ki/kickstart/package.nix: Cannot open: File exists
    38893:  /usr/bin/tar: ../../../../../nix/store/zfabdj4q4plq49faclwzkrsi825qzxny-source/pkgs/by-name/ki/ki/replace-deprecated-distutils-with-setuptools.patch: Cannot open: File exists
    38894:  /usr/bin/tar: ../../../../../nix/store/zfabdj4q4plq49faclwzkrsi825qzxny-source/pkgs/by-name/ki/ki/update-to-newer-anki-versions.patch: Cannot open: File exists
    38895:  /usr/bin/tar: ../../../../../nix/store/zfabdj4q4plq49faclwzkrsi825qzxny-source/pkgs/by-name/ki/ki/package.nix: Cannot open: File exists
    38896:  /usr/bin/tar: ../../../../../nix/store/zfabdj4q4plq49faclwzkrsi825qzxny-source/pkgs/by-name/ki/ki/fix-beartype-error.patch: Cannot open: File exists
    ...
    
    41163:  /usr/bin/tar: ../../../../../nix/store/zfabdj4q4plq49faclwzkrsi825qzxny-source/pkgs/by-name/ep/epy/package.nix: Cannot open: File exists
    41164:  /usr/bin/tar: ../../../../../nix/store/zfabdj4q4plq49faclwzkrsi825qzxny-source/pkgs/by-name/ep/epub-thumbnailer/package.nix: Cannot open: File exists
    41165:  /usr/bin/tar: ../../../../../nix/store/zfabdj4q4plq49faclwzkrsi825qzxny-source/pkgs/by-name/ep/epoll-shim/package.nix: Cannot open: File exists
    41166:  /usr/bin/tar: ../../../../../nix/store/zfabdj4q4plq49faclwzkrsi825qzxny-source/pkgs/by-name/ep/epiphany/package.nix: Cannot open: File exists
    41167:  /usr/bin/tar: ../../../../../nix/store/zfabdj4q4plq49faclwzkrsi825qzxny-source/pkgs/by-name/xs/xscreensaver/xscreensaver-wrapper-prefix.patch: Cannot open: File exists
    41168:  /usr/bin/tar: ../../../../../nix/store/zfabdj4q4plq49faclwzkrsi825qzxny-source/pkgs/by-name/xs/xscreensaver/package.nix: Cannot open: File exists
    41169:  /usr/bin/tar: ../../../../../nix/store/zfabdj4q4plq49faclwzkrsi825qzxny-source/pkgs/by-name/xs/xsct/package.nix: Cannot open: File exists
    41170:  /usr/bin/tar: ../../../../../nix/store/zfabdj4q4plq49faclwzkrsi825qzxny-source/pkgs/by-name/xs/xsimd/package.nix: Cannot open: File exists
    41171:  /usr/bin/tar: ../../../../../nix/store/zfabdj4q4plq49faclwzkrsi825qzxny-source/pkgs/by-name/xs/xsimd/disable-test_error_gamma.patch: Cannot open: File exists
    ...
    
    41426:  /usr/bin/tar: ../../../../../nix/store/zfabdj4q4plq49faclwzkrsi825qzxny-source/pkgs/by-name/re/realmd/package.nix: Cannot open: File exists
    41427:  /usr/bin/tar: ../../../../../nix/store/zfabdj4q4plq49faclwzkrsi825qzxny-source/pkgs/by-name/re/regex2json/package.nix: Cannot open: File exists
    41428:  /usr/bin/tar: ../../../../../nix/store/zfabdj4q4plq49faclwzkrsi825qzxny-source/pkgs/by-name/re/reproxy/package.nix: Cannot open: File exists
    41429:  /usr/bin/tar: ../../../../../nix/store/zfabdj4q4plq49faclwzkrsi825qzxny-source/pkgs/by-name/re/redfishtool/package.nix: Cannot open: File exists
    41430:  /usr/bin/tar: ../../../../../nix/store/zfabdj4q4plq49faclwzkrsi825qzxny-source/pkgs/by-name/re/renode-dts2repl/package.nix: Cannot open: File exists
    41431:  /usr/bin/tar: ../../../../../nix/store/zfabdj4q4plq49faclwzkrsi825qzxny-source/pkgs/by-name/re/rep-grep/package.nix: Cannot open: File exists
    41432:  /usr/bin/tar: ../../../../../nix/store/zfabdj4q4plq49faclwzkrsi825qzxny-source/pkgs/by-name/re/regina/package.nix: Cannot open: File exists
    41433:  /usr/bin/tar: ../../../../../nix/store/zfabdj4q4plq49faclwzkrsi825qzxny-source/pkgs/by-name/re/resonance/package.nix: Cannot open: File exists
    41434:  /usr/bin/tar: ../../../../../nix/store/zfabdj4q4plq49faclwzkrsi825qzxny-source/pkgs/by-name/re/renpy/shutup-erofs-errors.patch: Cannot open: File exists
    ...
    
    41855:  /usr/bin/tar: ../../../../../nix/store/zfabdj4q4plq49faclwzkrsi825qzxny-source/pkgs/by-name/li/linuxhw-edid-fetcher/linuxhw-edid-fetch.sh: Cannot open: File exists
    41856:  /usr/bin/tar: ../../../../../nix/store/zfabdj4q4plq49faclwzkrsi825qzxny-source/pkgs/by-name/li/linuxhw-edid-fetcher/package.nix: Cannot open: File exists
    41857:  /usr/bin/tar: ../../../../../nix/store/zfabdj4q4plq49faclwzkrsi825qzxny-source/pkgs/by-name/li/listen1/package.nix: Cannot open: File exists
    41858:  /usr/bin/tar: ../../../../../nix/store/zfabdj4q4plq49faclwzkrsi825qzxny-source/pkgs/by-name/li/libpkgconf/package.nix: Cannot open: File exists
    41859:  /usr/bin/tar: ../../../../../nix/store/zfabdj4q4plq49faclwzkrsi825qzxny-source/pkgs/by-name/li/libopus/package.nix: Cannot open: File exists
    41860:  /usr/bin/tar: ../../../../../nix/store/zfabdj4q4plq49faclwzkrsi825qzxny-source/pkgs/by-name/li/libopus/test-timeout.patch: Cannot open: File exists
    41861:  /usr/bin/tar: ../../../../../nix/store/zfabdj4q4plq49faclwzkrsi825qzxny-source/pkgs/by-name/li/libopenraw/package.nix: Cannot open: File exists
    41862:  /usr/bin/tar: ../../../../../nix/store/zfabdj4q4plq49faclwzkrsi825qzxny-source/pkgs/by-name/li/liborcus/package.nix: Cannot open: File exists
    41863:  /usr/bin/tar: ../../../../../nix/store/zfabdj4q4plq49faclwzkrsi825qzxny-source/pkgs/by-name/li/lightningcss/0001-napi-fix-build-error-in-cargo-auditable.patch: Cannot open: File exists
    ...
    
    43626:  /usr/bin/tar: ../../../../../nix/store/zfabdj4q4plq49faclwzkrsi825qzxny-source/pkgs/servers/sql/postgresql/ext/tsja.nix: Cannot open: File exists
    43627:  /usr/bin/tar: ../../../../../nix/store/zfabdj4q4plq49faclwzkrsi825qzxny-source/pkgs/servers/sql/postgresql/ext/default.nix: Cannot open: File exists
    43628:  /usr/bin/tar: ../../../../../nix/store/zfabdj4q4plq49faclwzkrsi825qzxny-source/pkgs/servers/sql/postgresql/ext/citus.nix: Cannot open: File exists
    43629:  /usr/bin/tar: ../../../../../nix/store/zfabdj4q4plq49faclwzkrsi825qzxny-source/pkgs/servers/sql/postgresql/ext/cstore_fdw.nix: Cannot open: File exists
    43630:  /usr/bin/tar: ../../../../../nix/store/zfabdj4q4plq49faclwzkrsi825qzxny-source/pkgs/servers/sql/postgresql/ext/plpgsql_check.nix: Cannot open: File exists
    43631:  /usr/bin/tar: ../../../../../nix/store/zfabdj4q4plq49faclwzkrsi825qzxny-source/pkgs/servers/sql/postgresql/ext/plv8/default.nix: Cannot open: File exists
    43632:  /usr/bin/tar: ../../../../../nix/store/zfabdj4q4plq49faclwzkrsi825qzxny-source/pkgs/servers/sql/postgresql/ext/plv8/0001-build-Allow-using-V8-from-system.patch: Cannot open: File exists
    43633:  /usr/bin/tar: ../../../../../nix/store/zfabdj4q4plq49faclwzkrsi825qzxny-source/pkgs/servers/sql/postgresql/ext/periods.nix: Cannot open: File exists
    43634:  /usr/bin/tar: ../../../../../nix/store/zfabdj4q4plq49faclwzkrsi825qzxny-source/pkgs/servers/sql/postgresql/ext/pg_auto_failover.nix: Cannot open: File exists
    ...
    
    43743:  /usr/bin/tar: ../../../../../nix/store/zfabdj4q4plq49faclwzkrsi825qzxny-source/pkgs/servers/rippled/data-api.nix: Cannot open: File exists
    43744:  /usr/bin/tar: ../../../../../nix/store/zfabdj4q4plq49faclwzkrsi825qzxny-source/pkgs/servers/rippled/validator-keys-tool.nix: Cannot open: File exists
    43745:  /usr/bin/tar: ../../../../../nix/store/zfabdj4q4plq49faclwzkrsi825qzxny-source/pkgs/servers/rippled/package.nix: Cannot open: File exists
    43746:  /usr/bin/tar: ../../../../../nix/store/zfabdj4q4plq49faclwzkrsi825qzxny-source/pkgs/servers/rippled/default.nix: Cannot open: File exists
    43747:  /usr/bin/tar: ../../../../../nix/store/zfabdj4q4plq49faclwzkrsi825qzxny-source/pkgs/servers/binserve/default.nix: Cannot open: File exists
    43748:  /usr/bin/tar: ../../../../../nix/store/zfabdj4q4plq49faclwzkrsi825qzxny-source/pkgs/servers/binserve/Cargo.lock: Cannot open: File exists
    43749:  /usr/bin/tar: ../../../../../nix/store/zfabdj4q4plq49faclwzkrsi825qzxny-source/pkgs/servers/monitoring/unpoller/default.nix: Cannot open: File exists
    43750:  /usr/bin/tar: ../../../../../nix/store/zfabdj4q4plq49faclwzkrsi825qzxny-source/pkgs/servers/monitoring/zipkin/default.nix: Cannot open: File exists
    43751:  /usr/bin/tar: ../../../../../nix/store/zfabdj4q4plq49faclwzkrsi825qzxny-source/pkgs/servers/monitoring/kapacitor/fix-linting-error-on-unneeded-clone.patch: Cannot open: File exists
    ...
    
    43800:  /usr/bin/tar: ../../../../../nix/store/zfabdj4q4plq49faclwzkrsi825qzxny-source/pkgs/servers/monitoring/munin/dont_preserve_source_dir_permissions.patch: Cannot open: File exists
    43801:  /usr/bin/tar: ../../../../../nix/store/zfabdj4q4plq49faclwzkrsi825qzxny-source/pkgs/servers/monitoring/munin/adding_sconfdir_munin-node.patch: Cannot open: File exists
    43802:  /usr/bin/tar: ../../../../../nix/store/zfabdj4q4plq49faclwzkrsi825qzxny-source/pkgs/servers/monitoring/munin/preserve_environment.patch: Cannot open: File exists
    43803:  /usr/bin/tar: ../../../../../nix/store/zfabdj4q4plq49faclwzkrsi825qzxny-source/pkgs/servers/monitoring/munin/default.nix: Cannot open: File exists
    43804:  /usr/bin/tar: ../../../../../nix/store/zfabdj4q4plq49faclwzkrsi825qzxny-source/pkgs/servers/monitoring/mtail/default.nix: Cannot open: File exists
    43805:  /usr/bin/tar: ../../../../../nix/store/zfabdj4q4plq49faclwzkrsi825qzxny-source/pkgs/servers/monitoring/fusion-inventory/default.nix: Cannot open: File exists
    43806:  /usr/bin/tar: ../../../../../nix/store/zfabdj4q4plq49faclwzkrsi825qzxny-source/pkgs/servers/monitoring/laurel/default.nix: Cannot open: File exists
    43807:  /usr/bin/tar: ../../../../../nix/store/zfabdj4q4plq49faclwzkrsi825qzxny-source/pkgs/servers/monitoring/buildkite-agent-metrics/default.nix: Cannot open: File exists
    43808:  /usr/bin/tar: ../../../../../nix/store/zfabdj4q4plq49faclwzkrsi825qzxny-source/pkgs/servers/monitoring/sensu-go/fix-go-version-error.patch: Cannot open: File exists
    ...
    
    44679:  /usr/bin/tar: ../../../../../nix/store/vwrm7xc2fha9imwzyz4xm5cvdm45l8m6-bzip2-1.0.8/lib/libbz2.so.1: Cannot create symlink to ‘libbz2.so.1.0.8’: File exists
    44680:  /usr/bin/tar: ../../../../../nix/store/vbqr5kdjaahds9wr29iz798j3bjv3dqv-aws-checksums-0.1.18/lib/libaws-checksums.so.1.0.0: Cannot open: File exists
    44681:  /usr/bin/tar: ../../../../../nix/store/vbqr5kdjaahds9wr29iz798j3bjv3dqv-aws-checksums-0.1.18/lib/aws-checksums/cmake/aws-checksums-config.cmake: Cannot open: File exists
    44682:  /usr/bin/tar: ../../../../../nix/store/vbqr5kdjaahds9wr29iz798j3bjv3dqv-aws-checksums-0.1.18/lib/aws-checksums/cmake/shared/aws-checksums-targets-release.cmake: Cannot open: File exists
    44683:  /usr/bin/tar: ../../../../../nix/store/vbqr5kdjaahds9wr29iz798j3bjv3dqv-aws-checksums-0.1.18/lib/aws-checksums/cmake/shared/aws-checksums-targets.cmake: Cannot open: File exists
    44684:  /usr/bin/tar: ../../../../../nix/store/vbqr5kdjaahds9wr29iz798j3bjv3dqv-aws-checksums-0.1.18/lib/libaws-checksums.so: Cannot create symlink to ‘libaws-checksums.so.1.0.0’: File exists
    44685:  /usr/bin/tar: ../../../../../nix/store/vbqr5kdjaahds9wr29iz798j3bjv3dqv-aws-checksums-0.1.18/include/aws/checksums/exports.h: Cannot open: File exists
    44686:  /usr/bin/tar: ../../../../../nix/store/vbqr5kdjaahds9wr29iz798j3bjv3dqv-aws-checksums-0.1.18/include/aws/checksums/crc.h: Cannot open: File exists
    44687:  /usr/bin/tar: Exiting with failure status due to previous errors
    44688:  ##[warning]Failed to restore: "/usr/bin/tar" failed with error: The process '/usr/bin/tar' failed with exit code 2
    ...
    
    45881:  gotests> ./go/controller/post_signin_email_password.go: OK
    45882:  gotests> ./go/controller/post_signup_webauthn.go: OK
    45883:  gotests> ./go/controller/workflows.go: OK
    45884:  gotests> ./go/controller/post_user_password_reset_test.go: OK
    45885:  gotests> ./go/controller/workflows_tickets_test.go: OK
    45886:  gotests> ./go/controller/validator_test.go: OK
    45887:  gotests> ./go/controller/webauthn.go: OK
    45888:  gotests> ./go/controller/post_user_email_change.go: OK
    45889:  gotests> ./go/controller/errors.go: OK
    45890:  gotests> ./go/controller/change_env.go: OK
    45891:  gotests> ./go/notifications/email.go: OK
    45892:  gotests> ./go/notifications/email_test.go: OK
    45893:  gotests> ./go/notifications/postmark/postmark.go: OK
    45894:  gotests> ./go/notifications/postmark/postmark_test.go: OK
    45895:  gotests> ./go/notifications/stdlib.go: OK
    45896:  gotests> ./go/notifications/templates_test.go: OK
    45897:  gotests> ./go/notifications/templates.go: OK
    45898:  gotests> ./go/notifications/errors.go: OK
    45899:  gotests> ➜ Running code formatters, if there are changes, fail
    ...
    
    45915:  gotests> go/notifications/templates_test.go:174: line is 259 characters (lll)
    45916:  gotests>                     <a href="http://link.test" style="line-height:100%;text-decoration:none;display:block;max-width:100%;background-color:#0052CD;border-radius:6px;font-weight:600;color:#fff;font-size:15px;text-align:center;padding:11px 23px" target="_blank">
    45917:  gotests> go/notifications/templates_test.go:182: line is 121 characters (lll)
    45918:  gotests>             <table align="left" border="0" cellpadding="0" cellspacing="0" role="presentation" style="margin-top: 10px;">
    45919:  gotests> go/notifications/templates_test.go:185: line is 203 characters (lll)
    45920:  gotests>                   <img alt="Nhost Logo" height="20" src="https://nhost.io/images/emails/icon.png" style="display:block;outline:none;border:none;text-decoration:none;width:20px;height:20px;" width="20" />
    45921:  gotests> go/notifications/templates_test.go:188: line is 139 characters (lll)
    45922:  gotests>                   <a href="https://nhost.io" style="color:#b4becc;text-decoration:none;font-size:14px" target="_blank">Powered by Nhost</a>
    45923:  error: builder for '/nix/store/6i9zgvz3mg0vy27c9mjar2n1mrynszlv-gotests.drv' failed with exit code 1
    45924:  error: build of '/nix/store/6i9zgvz3mg0vy27c9mjar2n1mrynszlv-gotests.drv', '/nix/store/svcafv147j2d7gyil8ljz4nzcg7iwwdm-check-node.drv' failed
    45925:  make: *** [Makefile:41: check] Error 100
    45926:  ##[error]Process completed with exit code 2.
    

    ✨ CI feedback usage guide:

    The CI feedback tool (/checks) automatically triggers when a PR has a failed check.
    The tool analyzes the failed checks and provides several feedbacks:

    • Failed stage
    • Failed test name
    • Failure summary
    • Relevant error logs

    In addition to being automatically triggered, the tool can also be invoked manually by commenting on a PR:

    /checks "https://github.com/{repo_name}/actions/runs/{run_number}/job/{job_number}"
    

    where {repo_name} is the name of the repository, {run_number} is the run number of the failed check, and {job_number} is the job number of the failed check.

    Configuration options

    • enable_auto_checks_feedback - if set to true, the tool will automatically provide feedback when a check is failed. Default is true.
    • excluded_checks_list - a list of checks to exclude from the feedback, for example: ["check1", "check2"]. Default is an empty list.
    • enable_help_text - if set to true, the tool will provide a help message with the feedback. Default is true.
    • persistent_comment - if set to true, the tool will overwrite a previous checks comment with the new feedback. Default is true.
    • final_update_message - if persistent_comment is true and updating a previous checks message, the tool will also create a new message: "Persistent checks updated to latest commit". Default is true.

    See more information about the checks tool in the docs.

    Copy link

    codiumai-pr-agent-pro bot commented Aug 15, 2024

    PR Reviewer Guide 🔍

    (Review updated until commit ad6aea4)

    ⏱️ Estimated effort to review: 3 🔵🔵🔵⚪⚪
    🧪 No relevant tests
    🔒 No security concerns identified
    ⚡ Key issues to review

    Error Handling
    The script lacks proper error handling for file operations and other potential failures.

    Hardcoded Styles
    Styles are hardcoded in the component, which may make maintenance difficult.

    Copy link

    codiumai-pr-agent-pro bot commented Aug 15, 2024

    PR Code Suggestions ✨

    Latest suggestions up to 8eca1e2

    CategorySuggestion                                                                                                                                    Score
    Localization
    ✅ Translate the email content to match the specified language
    Suggestion Impact:The email content was translated to Spanish, aligning with the suggestion to ensure consistency with the language attribute.

    code diff:

    -            <h1 style="font-size:24px;letter-spacing:-0.5px;line-height:1.3;font-weight:400;color:#484848;padding:0;margin-top:20px;">Verificar correo electrónico</h1>
    +            <h1 style="font-size:24px;letter-spacing:-0.5px;line-height:1.3;font-weight:400;color:#484848;padding:0;margin-top:0px;">Verificar correo electrónico</h1>
                 <p style="font-size:15px;line-height:1.4;margin:10px 0;color:#3c4149">Utilza el siguiente enlace para verificar tu correo:</p>

    The email content is in English while the language attribute is set to Spanish.
    Consider translating the content to Spanish for consistency.

    email-templates/es/email-verify/body.html [2-17]

     <html dir="ltr" lang="es">
     ...
    -<h1 style="font-size:24px;letter-spacing:-0.5px;line-height:1.3;font-weight:400;color:#484848;padding:0;margin-top:20px;">Verify Email</h1>
    -<p style="font-size:15px;line-height:1.4;margin:10px 0;color:#3c4149">Use this link to verify your email:</p>
    +<h1 style="font-size:24px;letter-spacing:-0.5px;line-height:1.3;font-weight:400;color:#484848;padding:0;margin-top:20px;">Verificar correo electrónico</h1>
    +<p style="font-size:15px;line-height:1.4;margin:10px 0;color:#3c4149">Utilice este enlace para verificar su correo electrónico:</p>
     
    Suggestion importance[1-10]: 10

    Why: The suggestion addresses a critical localization issue by ensuring the content matches the specified language, which is essential for user comprehension and consistency.

    10
    Enhancement
    Correct the button text to match the email's purpose

    The button text "Verify Email" is inconsistent with the purpose of the email, which
    is to sign in. Consider changing it to "Sign In" for clarity.

    email-templates/en/signin-passwordless/body.html [22-24]

     <a href="${link}" style="line-height:100%;text-decoration:none;display:block;max-width:100%;background-color:#0052CD;border-radius:6px;font-weight:600;color:#fff;font-size:15px;text-align:center;padding:11px 23px" target="_blank">
    -  Verify Email
    +  Sign In
     </a>
     
    • Apply this suggestion
    Suggestion importance[1-10]: 9

    Why: The suggestion corrects a significant inconsistency in the email content, improving clarity and user experience by aligning the button text with the email's purpose.

    9
    Add a title tag to the email template for better accessibility and fallback support

    Add a title tag within the section to improve SEO and provide a fallback for email
    clients that don't support CSS styling of the

    tag.

    email-templates/fr/password-reset/body.html [3-6]

     <head>
       <meta charset="UTF-8" />
       <meta name="x-apple-disable-message-reformatting" />
    +  <title>Réinitialiser votre mot de passe</title>
     </head>
     
    • Apply this suggestion
    Suggestion importance[1-10]: 7

    Why: Adding a title tag is a good enhancement for accessibility and SEO, providing a fallback for email clients that may not support CSS styling of the

    tag.

    7
    Add max-width property to image styles for better responsiveness across email clients

    Consider adding inline CSS for max-width on the image to ensure it doesn't exceed
    its container width on different email clients.

    email-templates/fr/password-reset/body.html [32]

    -<img alt="Nhost Logo" height="20" src="https://nhost.io/images/emails/icon.png" style="display:block;outline:none;border:none;text-decoration:none;width:20px;height:20px;" width="20" />
    +<img alt="Nhost Logo" height="20" src="https://nhost.io/images/emails/icon.png" style="display:block;outline:none;border:none;text-decoration:none;width:20px;height:20px;max-width:100%;" width="20" />
     
    • Apply this suggestion
    Suggestion importance[1-10]: 6

    Why: Adding a max-width property to the image style is a useful enhancement for ensuring the image does not exceed its container width, improving responsiveness across different email clients.

    6
    Security
    Add an expiration notice for the magic link

    Consider adding a short expiration notice for the magic link to enhance security and
    user awareness.

    email-templates/en/signin-passwordless/body.html [17]

    -<p style="font-size:15px;line-height:1.4;margin:10px 0;color:#3c4149">Use this link to securely sign in:</p>
    +<p style="font-size:15px;line-height:1.4;margin:10px 0;color:#3c4149">Use this link to securely sign in (expires in 1 hour):</p>
     
    • Apply this suggestion
    Suggestion importance[1-10]: 8

    Why: Adding an expiration notice enhances security by informing users of the time-sensitive nature of the link, encouraging prompt action.

    8
    Best practice
    Add information about the password reset link expiration

    Consider adding a note about the expiration time of the password reset link to
    inform users and encourage prompt action.

    email-templates/en/password-reset/body.html [17]

    -<p style="font-size:15px;line-height:1.4;margin:10px 0;color:#3c4149">Use this link to reset your password:</p>
    +<p style="font-size:15px;line-height:1.4;margin:10px 0;color:#3c4149">Use this link to reset your password (valid for 24 hours):</p>
     
    • Apply this suggestion
    Suggestion importance[1-10]: 8

    Why: Including expiration information is a best practice that informs users about the urgency of the action, enhancing security and user awareness.

    8
    Verify the language attribute in the HTML tag for all email templates

    Consider adding a lang attribute to the tag to improve accessibility and SEO. The
    current lang attribute is set to "fr", which is correct for French, but it's a good
    practice to double-check this for all language variants.

    email-templates/fr/password-reset/body.html [2]

    +<html dir="ltr" lang="fr">
     
    -
    • Apply this suggestion
    Suggestion importance[1-10]: 3

    Why: The suggestion to verify the language attribute is valid, but it is already correctly set to "fr" in the PR. This suggestion is more of a reminder than an improvement, hence a low score.

    3
    Accessibility
    Add aria-hidden attribute to the preview text div for better accessibility

    Add aria-hidden="true" to the hidden div containing the preview text to ensure
    screen readers skip this content, as it's meant for email client previews only.

    email-templates/fr/password-reset/body.html [8-10]

    -<div style="display:none;overflow:hidden;line-height:1px;opacity:0;max-height:0;max-width:0">
    +<div style="display:none;overflow:hidden;line-height:1px;opacity:0;max-height:0;max-width:0" aria-hidden="true">
       Réinitialiser votre mot de passe
     </div>
     
    • Apply this suggestion
    Suggestion importance[1-10]: 8

    Why: Adding aria-hidden="true" to the hidden div is an important accessibility improvement, ensuring screen readers skip content meant only for email client previews.

    8

    Previous suggestions

    Suggestions up to commit cbce09a
    CategorySuggestion                                                                                                                                    Score
    Enhancement
    Add viewport meta tag for better mobile responsiveness

    Consider adding a lang attribute to the tag to improve accessibility and SEO. Also,
    include a viewport meta tag for better responsiveness on mobile devices.

    email-templates/bg/email-confirm-change/body.html [1-6]

     <!DOCTYPE html>
     <html dir="ltr" lang="bg">
       <head>
         <meta charset="UTF-8" />
    +    <meta name="viewport" content="width=device-width, initial-scale=1.0" />
         <meta name="x-apple-disable-message-reformatting" />
       </head>
     
    Suggestion importance[1-10]: 9

    Why: Adding a viewport meta tag is a crucial enhancement for ensuring the email template is responsive on mobile devices, which significantly improves user experience.

    9
    Correct the button text to match the email's purpose

    Change the button text from "Verify Email" to "Sign In" to match the purpose of the
    email, which is for passwordless sign-in.

    email-templates/en/signin-passwordless/body.html [22-24]

     <a href="${link}" style="line-height:100%;text-decoration:none;display:block;max-width:100%;background-color:#0052CD;border-radius:6px;font-weight:600;color:#fff;font-size:15px;text-align:center;padding:11px 23px" target="_blank">
    -  Verify Email
    +  Sign In
     </a>
     
    Suggestion importance[1-10]: 9

    Why: The suggestion correctly identifies a mismatch between the button text and the email's purpose, which is crucial for user clarity and experience.

    9
    Fix a spelling error in the Spanish text

    Correct the typo in the Spanish text from "Utilza" to "Utiliza" for proper grammar.

    email-templates/es/email-verify/body.html [17]

    -<p style="font-size:15px;line-height:1.4;margin:10px 0;color:#3c4149">Utilza el siguiente enlace para verificar tu correo:</p>
    +<p style="font-size:15px;line-height:1.4;margin:10px 0;color:#3c4149">Utiliza el siguiente enlace para verificar tu correo:</p>
     
    Suggestion importance[1-10]: 8

    Why: Correcting the typo improves the professionalism and readability of the email, which is important for user trust and comprehension.

    8
    Add information about the link's expiration time

    Add a brief explanation about the magic link's expiration time to inform users about
    the link's validity period.

    email-templates/es/signin-passwordless/body.html [17]

    -<p style="font-size:15px;line-height:1.4;margin:10px 0;color:#3c4149">Utiliza este enlace para iniciar sesión de forma segura:</p>
    +<p style="font-size:15px;line-height:1.4;margin:10px 0;color:#3c4149">Utiliza este enlace para iniciar sesión de forma segura. El enlace expirará en 24 horas:</p>
     
    Suggestion importance[1-10]: 7

    Why: Adding expiration information is a helpful enhancement for user awareness, though not critical, it improves user experience by setting expectations.

    7
    Best practice
    Improve button compatibility across email clients

    Consider adding inline CSS for better email client compatibility, especially for the
    button styles.

    email-templates/bg/email-confirm-change/body.html [22-24]

    -<a href="${link}" style="line-height:100%;text-decoration:none;display:block;max-width:100%;background-color:#0052CD;border-radius:6px;font-weight:600;color:#fff;font-size:15px;text-align:center;padding:11px 23px" target="_blank">
    -  Смени имейл
    +<a href="${link}" style="line-height:100%;text-decoration:none;display:inline-block;max-width:100%;background-color:#0052CD;border-radius:6px;font-weight:600;color:#fff;font-size:15px;text-align:center;padding:11px 23px;mso-padding-alt:0;text-underline-color:#0052CD" target="_blank">
    +  <!--[if mso]><i style="letter-spacing: 25px;mso-font-width:-100%;mso-text-raise:20pt">&nbsp;</i><![endif]-->
    +  <span style="mso-text-raise:10pt;">Смени имейл</span>
    +  <!--[if mso]><i style="letter-spacing: 25px;mso-font-width:-100%">&nbsp;</i><![endif]-->
     </a>
     
    Suggestion importance[1-10]: 8

    Why: The suggestion to add inline CSS and conditional comments for better compatibility across email clients is valuable, as it ensures the button displays correctly in various environments, particularly in Outlook.

    8
    Add fallback fonts to improve text rendering consistency across email clients

    Consider adding a fallback font stack to ensure consistent rendering across
    different email clients and devices.

    email-templates/fr/password-reset/body.html [7]

    -<body style="background-color:#f5f5f5;font-family:-apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Oxygen-Sans, Ubuntu, Cantarell, 'Helvetica Neue', sans-serif;padding:20px;">
    +<body style="background-color:#f5f5f5;font-family:-apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Oxygen-Sans, Ubuntu, Cantarell, 'Helvetica Neue', Arial, sans-serif;padding:20px;">
     
    Suggestion importance[1-10]: 6

    Why: Adding a fallback font like Arial is a good practice to ensure consistent text rendering across different email clients, although the impact is relatively minor compared to other suggestions.

    6
    Accessibility
    Add title attribute to logo image for improved accessibility

    Add alt text to the logo image for better accessibility and to ensure the brand is
    represented even if images are blocked.

    email-templates/cs/email-verify/body.html [15]

    -<img alt="Nhost Logo" height="42" src="https://nhost.io/images/emails/icon.png" style="display:block;outline:none;border:none;text-decoration:none;width:42px;height:42px" width="42" />
    +<img alt="Nhost Logo" height="42" src="https://nhost.io/images/emails/icon.png" style="display:block;outline:none;border:none;text-decoration:none;width:42px;height:42px" width="42" title="Nhost" />
     
    Suggestion importance[1-10]: 7

    Why: While adding a title attribute can slightly improve accessibility, the existing alt attribute already provides necessary information. The improvement is minor but still beneficial.

    7

    @dbarrosop
    Copy link
    Member

    did you use react.email? should we add the original files so we can rebuild from them if we need minor tweaks or add a new language?

    @dbarrosop
    Copy link
    Member

    May I suggest moving ./emails to ./email-templates/generator/ and adding a README.md in the generator folder with a couple of lines explaining how to generate new locales using this?

    Copy link

    Preparing PR description...

    @codiumai-pr-agent-pro codiumai-pr-agent-pro bot added documentation Improvements or additions to documentation Review effort [1-5]: 4 and removed Review effort [1-5]: 3 labels Aug 19, 2024
    Copy link

    Preparing PR description...

    Copy link

    Preparing PR description...

    @onehassan onehassan merged commit 66bab98 into main Aug 20, 2024
    8 checks passed
    @onehassan onehassan deleted the feat/improve-emails branch August 20, 2024 14:26
    Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
    Labels
    dependencies documentation Improvements or additions to documentation enhancement New feature or request Review effort [1-5]: 3
    Projects
    None yet
    Development

    Successfully merging this pull request may close these issues.

    2 participants